package com.ruoyi.system.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 点赞对象 analyse_likes
 * 
 * @author ruoyi
 * @date 2024-09-02
 */
public class AnalyseLikes extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 点赞表用于记录用户对某个内容的点赞行为 */
    private Long id;

    /** 用户ID，标识哪个用户进行了点赞 */
    @Excel(name = "用户ID，标识哪个用户进行了点赞")
    private Long userId;

    /** 点赞总数 */
    @Excel(name = "点赞总数")
    private Long likesNum;

    /** 内容ID，标识被点赞的内容的唯一标识符 */
    @Excel(name = "内容ID，标识被点赞的内容的唯一标识符")
    private Long contentId;

    /** 创建时间戳，记录点赞的时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "创建时间戳，记录点赞的时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createdAt;

    /** 帖子id */
    @Excel(name = "帖子id")
    private Long articleId;

    /** 帖子所属用户id */
    @Excel(name = "帖子所属用户id")
    private Long targetUserId;

    /** 点赞帖子所属分类（考虑） */
    @Excel(name = "点赞帖子所属分类", readConverterExp = "考=虑")
    private Long categoryId;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setUserId(Long userId) 
    {
        this.userId = userId;
    }

    public Long getUserId() 
    {
        return userId;
    }
    public void setLikesNum(Long likesNum) 
    {
        this.likesNum = likesNum;
    }

    public Long getLikesNum() 
    {
        return likesNum;
    }
    public void setContentId(Long contentId) 
    {
        this.contentId = contentId;
    }

    public Long getContentId() 
    {
        return contentId;
    }
    public void setCreatedAt(Date createdAt) 
    {
        this.createdAt = createdAt;
    }

    public Date getCreatedAt() 
    {
        return createdAt;
    }
    public void setArticleId(Long articleId) 
    {
        this.articleId = articleId;
    }

    public Long getArticleId() 
    {
        return articleId;
    }
    public void setTargetUserId(Long targetUserId) 
    {
        this.targetUserId = targetUserId;
    }

    public Long getTargetUserId() 
    {
        return targetUserId;
    }
    public void setCategoryId(Long categoryId) 
    {
        this.categoryId = categoryId;
    }

    public Long getCategoryId() 
    {
        return categoryId;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("userId", getUserId())
            .append("likesNum", getLikesNum())
            .append("contentId", getContentId())
            .append("createdAt", getCreatedAt())
            .append("articleId", getArticleId())
            .append("targetUserId", getTargetUserId())
            .append("categoryId", getCategoryId())
            .toString();
    }
}
